/*
 * AgentConfiguration.h
 *
 *  Created on: Jan 26, 2009
 *      Author: Andrzej Olchawa
 *      mailto: andrzejolchawa@gmail.com
 *      http://www.hardtechnology.org
 *      This is a part of the Armazd project, which is covered by
 *      GNU GPL v2 license.
 */

#ifndef AGENTCONFIGURATION_H_
#define AGENTCONFIGURATION_H_

/* Include section */
#include <string>
#include <fstream>
#include <iostream>
#include <sstream>
#include <stdexcept>

#include "AgentDefinitions.h"
#include "AgentException.h"
#include "AgentUtils.h"
#include "HTFramework/HTProperties.h"

/* namespace declaration */
using namespace std;

/* AgentConfiguration class definition */
class AgentConfiguration
{

private:

	/* Variables related with Agent configurations */
	static string destinationsConfigPaht;
	static string sensorsConfigPath;
	static string listenersConfigPath;

public:

	/* Constructors and destructor */
	AgentConfiguration();
	virtual ~AgentConfiguration();

	/* Functions related with loading configurations */
	static void loadConfiguration();

	/* Getters and setters */
	static string getDestinationsConfigPaht();
	static string getSensorsConfigPath();
	static string getListenersConfigPath();

};

#endif /* AGENTCONFIGURATION_H_ */
